#include <ros/ros.h>
#include "../file_manager/file_manager.h"
#include <gtest/gtest.h>

string test_dir = "/home/aoting/hrg_bee_dev_v3/test_dir";

// 测试创建目录
TEST(file_manager, CreateDir){
    file_manager::CreateDir(test_dir);
    ASSERT_TRUE(file_manager::IsExists(test_dir));
}

// 测试创建文件
TEST(file_manager, CreateFile){
    string file_path = test_dir + "/test.txt";
    file_manager::CreateFile(file_path);
    ASSERT_TRUE(file_manager::IsExists(file_path));
}

// 测试删除文件
TEST(file_manager, DeleteFile){
    string file_path = test_dir + "/test.txt";
    file_manager::CreateFile(file_path);
    ASSERT_TRUE(file_manager::IsExists(file_path));
    file_manager::DeleteFile(file_path);
    ASSERT_FALSE(file_manager::IsExists(file_path));
    file_manager::DeleteFile(file_path);    // 删除不存在的文件
    ASSERT_FALSE(file_manager::IsExists(file_path));
}


int main(int argc, char** argv){
    testing::InitGoogleTest(&argc, argv);
    ros::init(argc, argv, "test_file_manager");
    setlocale(LC_ALL,"");   //ROS_INFO 中文显示, 需要添加头文件#include <sstream>
	
    // Debug 调试
    // if( ros::console::set_logger_level(ROSCONSOLE_DEFAULT_NAME, ros::console::levels::Debug) ) {
    //     ros::console::notifyLoggerLevelsChanged();
    // }

    ROS_INFO("test_file_manager initializating......");
    ros::NodeHandle nh;

    return RUN_ALL_TESTS();
}